/**
 * 给你一个由 非负 整数组成的 m x n 矩阵 grid。
 * 在一次操作中，你可以将任意元素 grid[i][j] 的值增加 1。
 * 返回使 grid 的所有列 严格递增 所需的 最少 操作次数。
 * 贪心即可
 */
class Solution {
public:
    int minimumOperations(vector<vector<int>>& grid) {
        int n = grid.size();
        int m = grid[0].size();
        int ans = 0;
        for(int i=0;i<m;++i){
            for(int j=1;j<n;++j){
                if(grid[j][i] > grid[j - 1][i]) continue;

                ans += grid[j - 1][i] + 1 - grid[j][i];
                grid[j][i] = grid[j - 1][i] + 1;
            }
        }        
        return ans;
    }
};